package com.ygxsk.carhome.response;

import java.math.BigDecimal;
import java.util.ArrayList;

/**
 * Created by itchenqi on 2018/2/26 0026.
 * description：我的订单列表内的实体数据
 */
public class MyOrderBean {

    /**
     * 下单时间创建时间
     */
    private String createTime;

    /**
     * 用户ID
     */
    private String customerId;


    /**
     * 订单ID
     */
    private String orderId;


    /**
     * 订单状态
     */
    private int orderState;

    //2019年03月16日添加的-------------------------------------------
    /**
     * 支付类型的描述信息
     */
    private String payTypeInfo;

    /**
     * 是否是购买的农品奥莱的Vip订单.若isVipOrder=1；不显示商品价格和下边的总价格
     */
    private int isVipOrder;

    /**
     * 配送时间内容，仅仅是用在农品奥莱的配送之中
     */
    private String estimatedArrivalTime;
    //-------------------------------------------

    /**
     * 订单编号
     */
    private String orderNo;


    /**
     * 订单描述内容
     */
    private String orderStateInfo;

    /**
     * 支付方式
     */
    private String payMode;

    /**
     * 服务状态
     */
    private String serviceState;


    /**
     * 订单最终支付金额实际支付金额内容
     */
    private BigDecimal finalAmount;

    /**
     * 总价钱量
     */
    private BigDecimal totalAmount;

    /**
     * 优惠券优惠金额内容
     */
    private BigDecimal discountAmount;

    /**
     * 订单明细（商品）
     */
    private ArrayList<ShopCartBean> orderDetails = new ArrayList<>();

    //======订单详情的内容部分字段。
    /**
     * 收货地址
     */
    private String address;

    /**
     * 添加提货码信息内容
     */
    private String accessCode;

    /**
     * 添加备注信息
     */
    private String tips;

    /**
     * 订单的预付单号
     */
    private String beforeOrderNo;

    /**
     * sendType（配送方式 1自提、2送货上门）
     */
    private int sendType;

    /**
     * 送货上门的小信息1、当日达；2、次日达
     */
    private int receiptCode;

    /**
     * 收货地址
     */
    private String receiptAddress;

    /**
     * 收货人信息
     */
    private String consignee;

    /**
     * 收货人的手机号内容
     */
    private String phone;

    /**
     * 运费信息
     */
    private BigDecimal freight;

    //-------如下 isReturn 字段和returnApplyNo 两个字段是2019年11月11月19日新增

    /**
     * 0：不可以申请退货；1：可以申请退货。applyStateInfo：退货退款状态说明
     */
    //private int isReturned;

    /**
     * 申请退货的退货单号
     */
//    private String returnApplyNo;

    /**
     * 2019年11月20日添加物流信息，可能是空的：未发货之前物流信息是空着的
     */
    private String logisticsInfo;

    /**
     * 退货单信息：根据这个对象是否是空或和其内部 applyState
     */
    private ApplyForReturnApply returnApply;

    //------------------------------------------------------------------------------

    public ApplyForReturnApply getReturnApply() {
        return returnApply;
    }

    public void setReturnApply(ApplyForReturnApply returnApply) {
        this.returnApply = returnApply;
    }

    public String getLogisticsInfo() {
        return logisticsInfo;
    }

    public void setLogisticsInfo(String logisticsInfo) {
        this.logisticsInfo = logisticsInfo;
    }

//    public String getReturnApplyNo() {
//        return returnApplyNo;
//    }

//    public void setReturnApplyNo(String returnApplyNo) {
//        this.returnApplyNo = returnApplyNo;
//    }

//    public int getIsReturned() {
//        return isReturned;
//    }
//    public void setIsReturned(int isReturned) {
//        this.isReturned = isReturned;
//    }

    public BigDecimal getFreight() {
        return freight;
    }

    public void setFreight(BigDecimal freight) {
        this.freight = freight;
    }

    /**
     * 当前订单的配送方式1是
     */
    //private int sendType;
    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public int getSendType() {
        return sendType;
    }

    public void setSendType(int sendType) {
        this.sendType = sendType;
    }

    public int getReceiptCode() {
        return receiptCode;
    }

    public void setReceiptCode(int receiptCode) {
        this.receiptCode = receiptCode;
    }

    public String getReceiptAddress() {
        return receiptAddress;
    }

    public void setReceiptAddress(String receiptAddress) {
        this.receiptAddress = receiptAddress;
    }

    public String getAccessCode() {
        return accessCode;
    }

    public void setAccessCode(String accessCode) {
        this.accessCode = accessCode;
    }

    public String getEstimatedArrivalTime() {
        return estimatedArrivalTime;
    }

    public void setEstimatedArrivalTime(String estimatedArrivalTime) {
        this.estimatedArrivalTime = estimatedArrivalTime;
    }

    public int getIsVipOrder() {
        return isVipOrder;
    }

    public void setIsVipOrder(int isVipOrder) {
        this.isVipOrder = isVipOrder;
    }

    public String getPayTypeInfo() {
        return payTypeInfo;
    }

    public void setPayTypeInfo(String payTypeInfo) {
        this.payTypeInfo = payTypeInfo;
    }

    public BigDecimal getDiscountAmount() {
        return discountAmount;
    }

    public void setDiscountAmount(BigDecimal discountAmount) {
        this.discountAmount = discountAmount;
    }

    public String getOrderStateInfo() {
        return orderStateInfo;
    }

    public void setOrderStateInfo(String orderStateInfo) {
        this.orderStateInfo = orderStateInfo;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getBeforeOrderNo() {
        return beforeOrderNo;
    }

    public void setBeforeOrderNo(String beforeOrderNo) {
        this.beforeOrderNo = beforeOrderNo;
    }

    public String getConsignee() {
        return consignee;
    }

    public void setConsignee(String consignee) {
        this.consignee = consignee;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public String getCustomerId() {
        return customerId;
    }

    public void setCustomerId(String customerId) {
        this.customerId = customerId;
    }

    public BigDecimal getFinalAmount() {
        return finalAmount;
    }

    public void setFinalAmount(BigDecimal finalAmount) {
        this.finalAmount = finalAmount;
    }

    public String getOrderId() {
        return orderId;
    }

    public void setOrderId(String orderId) {
        this.orderId = orderId;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

//    public String getOrderState() {
//        return orderState;
//    }

//    public void setOrderState(String orderState) {
//        this.orderState = orderState;
//    }


    public int getOrderState() {
        return orderState;
    }

    public void setOrderState(int orderState) {
        this.orderState = orderState;
    }

    public String getPayMode() {
        return payMode;
    }

    public void setPayMode(String payMode) {
        this.payMode = payMode;
    }

    public String getServiceState() {
        return serviceState;
    }

    public void setServiceState(String serviceState) {
        this.serviceState = serviceState;
    }

    public BigDecimal getTotalAmount() {
        return totalAmount;
    }

    public void setTotalAmount(BigDecimal totalAmount) {
        this.totalAmount = totalAmount;
    }

    public ArrayList<ShopCartBean> getOrderDetails() {
        return orderDetails;
    }

    public void setOrderDetails(ArrayList<ShopCartBean> orderDetails) {
        this.orderDetails = orderDetails;
    }

    public String getTips() {
        return tips;
    }

    public void setTips(String tips) {
        this.tips = tips;
    }
}
